Combination printer and its paper

ABSTRACT

A computer network system and method for printing purchase transaction receipts includes a novel printer physical structure, data structure, and control logic for printing on both sides of a register receipt, business rules designed to facilitate the two sided printing, and print paper designed to facilitate two sided printing.

CROSS REFERENCE TO RELATED APPLICATIONS

This application is a continuation of application Ser. No. 11/488,126, filed Jul. 18, 2006, now U.S. Pat. No. 7,708,360; and

application Ser. No. 11/488,126, filed Jul. 18, 2006 claims priority to:

provisional application 60/742,908, filed Dec. 7, 2005 entitled “POS Network Including Color Printing and Color Highlighting,”; and

provisional application 60/778,410, filed Mar. 3, 2006 entitled “POS Network Including Color Printing and Color Highlighting,”.

This application incorporates by reference application 60/742,909, filed Dec. 7, 2005, entitled “POS Network Including Color Printing and Color Highlighting”, in its entirety.

FIELD OF THE INVENTION

This invention relates generally to Point Of Sale (POS) computer systems (CSs).

BACKGROUND ART

Retail store marketing systems for marketing in many retail stores include a central computer system (CS), a plurality of retail store POS computers, one at each retail store, and a plurality of local marketing computers, one residing at each retail store, and communication networks enabling communication between the central CS and the retail stores. The networks include both a local area network (LAN) at each retail store and a wide area network (WAN) such as the Internet enabling communication with the central CS. Each local marketing computer may be a network client in the retail store's LAN, and each marketing computer may also have a separate telephone modem dial-up or network connection enabling it to communicate with the central CS. The local marketing computers typically include a text file (database) of rules from which printing of specified coupons are triggered by signals from the POS computers in the retail store. Marketing printing occurs at a marketing computer printer connected to the marketing computer. Typical retail stores have a plurality of checkout lanes. At the end of each lane is a POS terminal and a POS terminal printer connected to the POS computer via the LAN. There is one marketing computer adjacent each POS printer. The marketing computer has a correspondence identifying which marketing printer is adjacent which POS printer.

In response to reading product bar code items (product identifier and quantity data) and a customer identification number (CID) during each transaction, the POS terminal transmits over the LAN a marketing computer data stream, the marketing computer data stream including header information in a specification that the marketing computer is programmed to read, so that the marketing computer can interpret the data read at the POS terminal, and then process and determine promotions to offer to the customer. This data includes for example customer identification, product identifications, and coupon identifications. The POS terminal is also coded to transmit end of transaction, total of transaction, tender type, and end of transaction data over the LAN with a header that is recognizable to the marketing computer.

The POS terminal is also programmed to cache the transaction data for a customer's transaction at the POS, as it is received, and at the end of the transaction, transmit a log of the transaction data for that transaction, in a POS computer data stream in a format that the POS computer is programmed to read, to the POS computer.

The data in the marketing computer data stream is generally redundant to the data in the POS computer data stream. The marketing computer generally does not read the data formatted for reading by the POS computer, and vice versa.

In prior art systems, the end of transaction (EOT) signal results in a prompt instructing the POS printer to immediately print (place in printer queue memory from which printing occurs without any further signals being required) transaction data for printing the register receipt for the customer's purchase transaction. The register receipt lists descriptions of items purchases, quantity, price, and total, amongst other data. The register receipt is a portion of a roll of paper tape stored in the printer. Typical paper tapes are on the order of a several centimeters in width. The length of the register receipt for purchase transaction depends upon the number of items purchased and listed on the register receipt.

Herein, CS means computer system.

Herein, POS means point of sale.

SUMMARY OF THE INVENTION Objects of the Invention

It is an object of this invention to use single printer at the point of sale for printing both (1) a retail store's register receipt printing functions and (2) marketing communications.

It is an object of this invention to facilitate printing marketing communications in color and with graphics.

It is an object of this invention to minimize ink used for printing at a POS.

It is an object of this invention to efficiently use all space on front and back surfaces of a paper register receipt for communicating printed information.

It is an object of this invention to prevent ink bleed between opposing sides of a paper receipt.

It is an object of this invention to facilitate printing on opposite sides of register receipts.

BRIEF DESCRIPTION OF DRAWINGS

The novel inventions are described with reference to the following figures, wherein like reference numerals refer to the same or similarly functioning elements.

FIG. 1 is a schematic of a novel network CS 1;

FIG. 2 is a schematic of a data structure of POS terminal database 30 of FIG. 1;

FIG. 3 is a schematic of a data structure of marketing computer database 50 of FIG. 1;

FIG. 4 is a schematic of a data structure of printer database 70 of FIG. 1;

FIG. 5 is a schematic of a data structure of POS computer database 90 of FIG. 1;

FIG. 6 is a schematic of POS printer 60 of FIG. 1;

FIG. 7 is a partial schematic of alternative POS printer 60 having four print heads;

FIG. 8 is a schematic side section view of paper tape 660 of FIG. 6;

FIG. 9 is a flowchart for controlling printing by POS printer 60;

FIG. 10 is a flowchart for controlling printing by POS printer 60; and

FIG. 11 is a flowchart for controlling printing by POS printer 60.

DETAILED DESCRIPTION OF EMBODIMENTS

FIG. 1 shows novel network CS 1 including central CS 3, wide area network such as the Internet 2, Local Area Network (LAN) 10, POS terminal 20, marketing computer 40, POS printer 60, boundary of retail store 95, and boundaries of additional retail stores indicating that additional retail store CSs may exist in the network. FIG. 1 also shows POS terminal database 30 associated with POS terminal 20, marketing computer database 50 associated with marketing computer 40, and printer database 70 associated with POS printer 60, and POS computer database 90 associated with POS computer 80. Each computer controls read and write access to its associated database. Optionally, POS printer 60 is a terminal or otherwise controlled by POS computer 80 in which case POS computer 80 performs the processing functions associated herein with printer 60 and receives data directed to printer 60.

One or more of devices 20, 40, 60, and 80 have a network connection to WAN 2, and may act as gateways allowing other devices on the LAN to access WAN 2. Optionally, a separate gateway device resides on LAN 10 enabling devices on LAN 10 to access WAN 2.

Marketing computer 40, POS printer 60, POS computer 80, and preferably also POS terminal 20, each include a digital central processing unit, human user input and output devices, and associated high-speed memory. Each one of marketing computer 40, POS printer 60, POS computer 80, and preferably also POS terminal 20, stores network protocols and code for converting and transmitting data in those network protocols, such as TCP/IP. Devices 20, 40, 60, and 80 are connected to LAN 10 enabling them to communicate via data packet transport with one another as specified herein.

POS terminal 20 is configured to process purchase transactions by receiving transaction data, and transmitting the transaction data to LAN 10. POS terminal 20 is configured to transmit the transaction data in two different modes. First, it is configured to transmit each datum (product identifier, quantity, customer identification) as each datum is received in POS terminal 20 over LAN 10 to marketing computer 40. Second, it is configured to transmit a log of each transaction containing all product identifiers, pricing, and related, over LAN 10 to POS computer 80. The data format specification for transmissions to marketing computer 40 may be different than the data format specification for transmission of data to POS computer 80. Alternatively, each packet may contain indicia identifying an address of the intended destination device.

Either POS terminal 20 or POS computer 80 is configured to generate and transmit, to POS printer 60, POS print instructions 710, and configured to take that action in response to identification of an end of transaction (EOT). The EOT signals the completion of the customer's purchase transaction at the POS terminal. POS print instructions 710 include instructions for printing a purchase transaction receipt.

A purchase transaction receipt includes printed text that specifies description and price of product items in the customer's purchase order.

Marketing computer 40 is configured to generate and transmit to POS printer 60 combined marketing and POS print instructions 720 for printing both on the same paper a purchase transaction receipt and certain marketing material. The marketing material may be on the same side of the paper as the transaction receipt information. The marketing material may be on the opposite side of the paper from the transaction receipt information. The marketing material may include incentive offers, such as coupons, and advertisements.

Marketing computer 40 is configured to process data from a POS transaction, preferably as it receives that data transmitted by POS terminal 20 over LAN 10. Optionally, marketing computer 40 logs the transaction data received for a customer's purchase transaction and awaits receipt of an EOT signal for the transaction prior to processing the data, and then generates and transmits combined marketing and POS print instructions 720 to POS printer 60. The combined marketing and print instructions 720 instruct the printer to print register receipt information and marketing information.

POS printer 60 may be configured to not print POS print instructions 710 it received from either POS terminal 20 or POS computer 80, if POS printer 60 timely receives combined marketing and POS print instructions 720 from marketing computer 40.

POS printer 60 preferably includes conventional structure or code for printing based upon print instructions, and also conventional structure or code for receiving and interpreting information in at least one network protocol, such as TCP/IP.

Either marketing computer 40 or POS printer, or both collectively, are configured to specify location on register receipt paper of register receipt information and marketing information, including whether to print on only one side of the paper tape or both side of the paper tape, what information should be on each side, and font and graphics size scaling to fit all information onto a certain length of the paper tape.

Central CS 3 stores transaction data in association with customer and store identifiers for a plurality of stores and many customers. Central CS 3 may perform marketing processing to determine what specific marketing content to provide to a particular consumer, in which case it transmits to marketing computer 40 the customer's identifier in association with either the specific marketing content (coupon details or the like) or an identifier of the specific marketing content. Marketing computer 40 may refer to this information when processing transaction data after receiving the same customer identifier during that customer's subsequent purchase transaction in the retail store.

POS computer 80 is configured to log transaction information for transaction in retail store 95, track inventory, track income, and generate corresponding reports. It may also be the authority instructing the POS printers in the store to print register receipts.

POS terminal 20 and POS terminal database 30 are associated with a single checkout lane or station. There can be numerous checkout stations in each retail store where a customer may pay for merchandise, and where the product identification codes and currency transaction information for a customer's transaction may be entered at that POS terminal.

Marketing computer 40 runs code implementing marketing criteria on transaction data associated with CIDs to determine specific marketing content to associate with the CIDs. Marketing computer 40 distributes either specified content or identifiers of said specified content it associates with a CID to POS printer 60.

Marketing criteria may depend on transaction history of a customer, customer demographics, preferences on the part of the marketer. Marketing computer 40 may store transaction history data (data from prior transactions including product codes and customer identifiers associated with each one of a set of prior transactions). Alternatively, marketing computer 40 may store CIDs and associated incentive offers to provide to customers having that CID, wherein the list of CIDs and associated incentive offers are provided to the marketing computer by central CS 3.

POS terminal database 30, marketing computer database 50, printer database 70, and POS computer database 90 are each preferably configured to receive and store transaction data for a retail store. Preferably, marketing computer database 50 and printer database 70 are both configured to also receive and store marketing content data.

FIG. 2 shows a data structure for POS terminal database 30 of FIG. 1 as including marketing computer data stream header 310, POS computer data stream header 320, terminal transaction logs 330, and EOT signal 340.

Marketing computer data stream header 310 either specifies a logical address, (IP address, port number, or the like, for marketing computer 40) or specifies a data format for data following it in the data stream. If the latter, marketing computer 40 is configured to read data on the LAN in that format.

POS computer data stream header 320 either specifies a logical address, (IP address, port number, or the like, for POS computer 80) or specifies a data format for data following it in the data stream. If the latter, POS computer 40 is configured to read data on the LAN in that format.

Terminal transaction log 330 logs transaction information for each transaction, such as product identifiers, coupon identifiers, discounts applied, time, date, terminal ID, amounts, total, and payment type (credit card type, check, case, etc).

EOT signal 340 is data that specifies EOT.

FIG. 3 shows marketing computer database 50 of FIG. 1 including stored incentive offers data 410, customer master records 420, data stream header specification 430, store transaction logs 440, targeting criteria 450, and marketing content 460. Data stream header specification 430 exists when the specification of data format for data to be read by the marketing computer 40 differs from the specification for data to be read by POS computer 80.

Stored incentive offers data 410 include a customer identifier and marketing content defining an incentive offer, such as a coupon. Preferably, data 410 also includes status fields for identifying the status of the offer, such as not yet provided to the customer, provided (previously printed at a point of sale printer or otherwise) to the customer, and redeemed by the customer. The customer identifier may for example be a loyalty card identifier, some numerals from a credit card or other form of customer payment.

Customer master records 420 may include the customer's transaction history in association with the customer's identifier; marketing analysis performed on the customer's transaction history by either marketing computer 40, POS computer 80, or central computer 3; and other customer specific information such as address and telephone, account numbers, demographics. Customer master records may be used to generate stored incentive offers data 410.

Data stream header specification 430 is optional. It specifies the format of data streams that marketing computer 40 recognizes on LAN 10. For example, the header for the sequential transmission from terminal 10 of product identifiers associated with a transaction occurring at terminal 10. For example, not the header for the log file transmitted from POS terminal 20 to POS computer 80 at the end of a transaction.

Store transaction logs 440 include store transaction information, such as items purchased, discounts applied, time, date, and place of purchase, payment type. This information may be received by marketing computer database either by marketing computer 40 reading the sequential product identifiers as they are scanned during each transaction, optionally by marketing computer 40 reading the log of each transaction transmitted on the LAN (the same file read by POS computer 80), or as data file transfer from POS computer 80 to marketing computer 40.

Targeting criteria 450 includes criteria for providing to certain customer identifications, certain promotions or marketing content 460, including coupons, rebates, instant discounts, advertisements, marketing information to be offered or presented to the customer, and code for applying those criteria to customers' purchase transaction data and other data associated with the customers.

Marketing content 460 includes coupons, rebates, instant discounts, advertisements, marketing information to be offered or presented to the customer. Particular marketing content is usually associated with particular targeting criteria. For example, a targeting criteria specifying repeated purchase of diapers in a prior one month period may be linked to marketing content specifying a coupon for baby food.

FIG. 4 shows printer database 70 of FIG. 1 including POS print instructions 710, combined marketing and POS print instructions 720, marketing content 730, print head identification code 740, EOT signal code 750, time out function code 760, rewind tape signal code 770, remnant space code 780, and marketing content 790.

POS print instructions 720 includes instructions to print all the transaction data for printing a register receipt for the customer's transaction. This typically includes the product descriptions (names) of the products purchased (or the product identifiers if the printer logic is where the identifiers and product descriptions are associated), price, quantity, discounts, time, date, and place of purchase; payment type, and transaction totals with and without applied discounts.

Combined marketing and POS print instructions 720 include instructions for printing both the register receipt information for the customer's transaction and certain marketing content, such as coupons, rebates, instant discounts, and advertisements.

Print head identification code 740 includes data that specifies which of print heads 650 are to print marketing and register receipt information, timing of printing, and order of printing. Print head identification code may run in POS printer 60 by processing instructions 710 or 720.

Rewind tape signal code 770 is code that specifies rewinding of the printer's paper tape. It enable printer 60 to rewind the paper tape after printing on a first side of the paper tape to enable subsequent printing on the opposite second side of the paper tape along the same length of the paper tape having printing on the first side. Rewind tape signal code 770 may run in POS printer 60 by processing instructions 710 or 720. In one example, instructions 720 are received at POS printer 60 after POS printer 60 initiated printing based upon instructions 710. Then, Rewind tape signal code 770 instructs POS printer 60 to rewind paper tape 660 in order to print based upon marketing content contained in instructions 720, on the opposite side of paper tape 660 from where register receipt information was printed.

Remnant space code 780 includes instructions for printing marketing content and register receipt information in such a way as to optimize the use of blank space on paper tape 660. Code operating on print information 720 determines the length of paper tape 660 required to print register receipt information, and the length of paper tape required to print marketing information based upon instruction 720. Remnant space code 780 determines the difference in paper tape length which would otherwise be blank paper tape on one side of the paper tape. Remnant space code 780 then determines how to fill any blank space on either side.

Marketing content 790 includes for example, data defining incentive offers and advertisements, including any text, graphics, and color thereof associated therewith. Marketing content may be stored either in printer database 70 or marketing computer database 50. Marketing computer database 50 and printer database 70 may both store an association of marketing content identifiers to marketing content. If marketing computer 40 transmits marketing identifiers to printer 60, printer 60 may associate marketing content for printing with the corresponding marketing identifiers.

In one embodiment, remnant space code may determine additional marketing material to print to fill the blank space. It may compare the length of various selected marketing items and prints only those marketing items that would fit on the length of paper tape 660 required for the register receipt information. That is, limit printed paper tape length by deletion of marketing items. It may identify additional marketing content to print in blank spaces, if any, on either side of the paper tape. It may resize text or graphics so that marketing content and register receipt information contained in instruction 720 each occupy approximately the same length of paper tape, so that two sided printing with marketing content on one side and register receipt information on the other side occupy the same length of paper tape.

Remnant space code 780, in addition with the other code mentioned herein, acts to generate one or more print files associated with each purchase transaction for printing for that transaction.

Time out function code 760 is code specifying a time period after receipt by POS printer 60 of EOT signal 340 at which POS printer 60 will print based upon instruction 710 if POS printer 60 has not received instruction 720 by the end of that time period. For example, code 760 may do this by placing in printer queue memory from which printing occurs without requiring any further signals the transaction data it received from POS terminal 20 based upon instructions 710. Time out function code 760 may be programmed to act for example 1, 1.5, or 2 seconds after receipt by POS printer 60 of EOT signal 340. This time period is selected to limit delay in processing purchase orders.

In alternative embodiments, either POS printer 60 or marketing computer 40 could determine which marketing content to print, the length on paper tape 660 of that marketing content, the length of white space on the transaction content 720 side of paper tape 660, and then print additional marketing content in the white space on the transaction content side of paper tape 660. That is, the code specifying the print data and instructions, or the print file could reside on any of these computers, and they could send the final print file or files, including control signals for rewind of the paper tape, if necessary, to printer 60 for printing.

FIG. 5 shows POS computer database 90 of FIG. 1 as including store transaction logs 930 and accounting and inventory information 960. Store transaction logs 930 store all transaction data for all transactions for that retail store. Accounting and inventory information 960 includes sales information and lists of items and quantities thereof in stock, etc.

FIG. 6 shows POS printer 60 of FIG. 1 including controller 610, paper tape roll 620, paper tape 660, control lines 630, rollers 640, and print heads 650, and database 70.

Controller 610, via control lines 630, instructs print heads 650 when and what to print, and instructs rollers 640 when to roll the paper out and roll the paper back. Controller 610 acts pursuant to instructions generated by code run in POS printer 60 or received from other elements of the network. Printing includes controller 610 instructing, via control lines 630, rollers 640 to advance paper tape 660 in conjunction with instructions to print heads 650 to print either transaction content 720 or marketing content 730, and optionally instructions to retract paper tape 660 after certain printing. Although shown as part of POS printer 60, controller 610 may be remote from the print heads, and its functions may be performed elsewhere, such as in the POS computer or the marketing computer.

One of printer heads 650 faces a first side of paper tape 660. Another of printer heads 650 faces an opposite second side of paper tape 660. Hence each print head prints to a different side of paper tape 660.

Paper tape roll 620 includes a spooling mechanism (not shown) upon which rolled up paper tape 660 is mounted.

Preferably, one print head is an ink jet print head and the other print head is a thermal print head. Preferably, paper tape 660 has one side formed from thermally sensitive paper to enable printing by thermal print head 650 onto that side of paper, and paper tape 660 is oriented with the thermally sensitive paper side facing the thermal print head 650. The print head (other than thermal) may be either a black and white or a color print head.

FIG. 7 shows an alternative configuration of print heads 650 including four print heads. In this configuration, each side of the paper may face two different types of print heads, any of thermal, ink jet, and laser jet. Alternatively, both print head facing the same side of paper may be of the same design, both thermal, both ink jet, or both laser jet.

The relative locations of print heads on opposite sides of paper tape 660 may be directly opposed to one another or offset along the direction of tape movement from one another.

FIG. 8 shows a side section of paper tape 660 of FIG. 6 including upper paper side 810, lower paper side 820, and impermeable layer 830. In the preferred embodiment, impermeable layer 830 exists and prevents ink from bleeding from one side of the paper tape to the other side. Upper paper tape side 810 may be thermally printer sensitive paper, such as paper containing temperature sensitive dyes and/or phenols, and lower paper side 820 may be thermal printer insensitive paper. Impermeable layer 830 may for example be polyvinyl, or some other polymeric material.

FIG. 9 shows printer logic 900 having steps that may be executed in a CPU in POS printer 60. In step 910, printer logic determines whether printer data was received. If yes, execute step 920, In step 920, printer logic determines whether an EOT signal was received. If yes, execute step 930, printer logic prints the print file.

If step 910 is no, execute wait state 940 and then execute 910 again.

If step 920 is no, execute time out check 950. If step 950 is no, execute wait state 940 and then check 910 again. If step 950 is yes, execute print step 930. Wait state 940 may be for example 50 milliseconds.

FIG. 10 shows remnant logic 1000 in which either POS printer 60 or marketing computer 40 performs the calculations to determine the optimal amount of marketing content 460 to fill up the space on both sides of paper tape 660.

FIG. 10 shows method 1000 including determining register receipt paper tape print length 1010, determining marketing content paper tape print length 1020, determine remnant tape length and blank space tape side 1030, determine marketing content to fill remnant space 1040, generate or revise print file 1050, and print 1060.

In step 1050, printer logic generates or revises one or more print files to include printing of the additional marketing material in the register tape including the customer's transaction data and marketing material. Additional marketing material may be determined for example by filtering tape print length of a set of additional marketing materials to exclude those additional marketing materials having a tape print length greater than the remnant tape length, and then by ranking the resulting set of additional marketing materials. The ranking may be based upon correlation to other marketing materials for that customer, in order of remuneration to the marketing company from the manufacturer or retailer for such printing, or by correlation of the product identifies in the marketing material to demographics associated with the customer's identifier.

In one embodiment, POS printer 60 (1) determines the length of paper tape 660 required to print the customer's receipt, consisting of transaction content 720, (2) determines the length of various examples of marketing content and (3) prints only examples of marketing content that would fit on the length of paper tape 660 required for printing the receipt.

In another embodiment, either POS printer 60 or marketing computer 40 could be configured and coded to determine what marketing content to print, the length of paper tape containing marketing content, the length of white (available) space on the register receipt side of paper tape 660 resulting therefrom, and is coded to print additional marketing content on the white space on the transaction content side of paper tape 660.

In one embodiment, remnant space code identifies a white space area, identifies marketing content to associate with that white space, and then scales (up or down) the size of fonts and/or graphics of the associated marketing content to fit the identified white space.

FIG. 11 shows printer logic relating to two sided printing.

In step 1110, printer logic determines whether to print concurrently on both sides of register tape 660. For example, printer logic may examine print contents to determine the required print speed to print both sides, and decide to print concurrently if print speeds are compatible. If yes, execute step 1120 to concurrently print to both sides. If no, execute step 1130 to determine which side to print first. In step 1140, print to the first side. In step 1150, rewind the paper tape 660 the length of the side 1 printing (or slightly less, such as 0.5 inches or 1 centimeter less, to avoid the paper tape from losing registration with the rollers in the printer). In step 1160, print side two.

Once POS printer 60 has received combined print instructions 720, POS printer 60 can print both paper sides concurrently, interleave printing on both sides, or print one side in its entirety first, as specified by business rules embedded in code.

Code executing in POS printer 60 can implement time out function code 760, such that, if POS printer 60 does not receive instructions 720 within the specified time period, POS printer 60 proceeds to print transaction content 720 for the customer.

Likewise, code executing in POS printer 60 can implement another time out function such that, if POS printer 60 does not receive instructions 710 within the specified time period, POS printer 60 proceeds to print based upon instructions 720.

If POS printer 60 receives instructions 720 while printing based upon instructions 710, code could direct POS printer 60 to print the marketing content specified by instructions 720 after completing printing the register receipt specified by code 710. This may include implementing code to rewind the register tape by the length of the register receipt before printing marketing content based upon instruction 720.

Marketing content and pointers thereto may reside in printer 60, and instructions 720 may include pointers to that marketing content instead of actual marketing content. If so, corresponding pointers exist in the database accessible by marketing computer 40.

The printing aspects, such as EOT and time out printing functions determining which data source, POS terminal or marketing computer, to use to print the register receipt, do not require a two sided printer or two sided printing.

Aspects and specific embodiments of the invention presented above are not intended to limit the scope of protection based upon the broad concepts disclosed above. 

The invention claimed is:
 1. A Point of Sale (POS) printer, comprising: a paper tape roller configured to advance or retract a paper tape configured as a paper tape roll, the paper tape having a first side and a second side; a first print head configured to print on the first side of the paper tape; a second print head configured to print on the second side of the paper tape; and a controller configured to: control the first print head and the second print head to print a register receipt on the first side of the paper tape and advertising content on the second side of the paper tape; receive from a POS terminal or a POS computer an End of Transaction (EOT) signal and print instructions used to print the register receipt for a purchase transaction; delay printing the register receipt until expiration of a specified time after receipt by the POS printer of the EOT signal for the purchase transaction; receive second print instructions used to print: (i) the register receipt and (ii) the advertising content from a marketing computer during the delay; and print the register receipt on the first side of the paper tape and the advertising content on the second side of the paper tape based on the second print instructions from the marketing computer instead of the print instructions from the POS terminal or the POS computer.
 2. The POS printer of claim 1, wherein the controller is further configured to: scale the register receipt or the advertising content to fit within a particular length of the paper tape.
 3. The POS printer of claim 1, wherein the controller is further configured to: cause the first print head to print the register receipt on the first side of the paper tape; cause the paper tape roller to rewind the paper tape roll; and cause the second print head to print the advertising content on the second side of the paper tape.
 4. The POS printer of claim 1, wherein the controller is further configured to: determine remnant space on at least one of the first side of the paper tape or the second side of the paper tape; determine content to fill the remnant space; and cause the content to be printed on the remnant space.
 5. The POS printer of claim 4, wherein the controller is further configured to: determine marketing content to fill the remnant space.
 6. The POS printer of claim 5, wherein the controller is further configured to: resize graphics or text to fit the marketing content in the remnant space.
 7. The POS printer of claim 4, wherein the controller is further configured to: identify a plurality of marketing items to potentially fill the remnant space; determine which ones of the plurality of marketing items to print on the remnant space; and cause the determined ones of the plurality of marketing items to be printed on the remnant space.
 8. The POS printer of claim 7, wherein the controller is further configured to: determine which ones of the plurality of marketing items will fit within the remnant space, wherein the determination of which ones of the plurality of marketing items to print on the remnant space is based on which items will fit.
 9. The POS printer of claim 7, wherein the controller is further configured to: rank the plurality of marketing items, wherein the determination of which ones of the plurality of marketing items to print on the remnant space is based on the rank.
 10. The POS printer of claim 1, wherein the controller is further configured to: determine whether to cause the first print head and the second print head to print simultaneously or one at a time.
 11. A Point of Sale (POS) printer comprising: a paper tape roller configured to advance or retract a paper tape configured as a paper tape roll, the paper tape having a first side and a second side; a first print head configured to print on the first side of the paper tape; a second print head configured to print on the second side of the paper tape; a controller configured to: control the first print head and the second print head to print a register receipt on the first side of the paper tape and advertising content on the second side of the paper tape; and determine remnant space on the first side of the paper tape or remnant space on the second side of the paper tape based on a first length of the register receipt to be printed on the first side and a second length of the advertising content to be printed on the second side; and print additional information on the remnant space.
 12. The POS printer of claim 11, wherein the controller is further configured to: scale the register receipt or the advertising content to fit within a particular length of the paper tape.
 13. The POS printer of claim 11, wherein the controller is further configured to: cause the first print head to print the register receipt on the first side of the paper tape; cause the paper tape roller to rewind the paper tape roll; and cause the second print head to print the advertising content on the second side of the paper tape.
 14. The POS printer of claim 13, wherein the controller is further configured to: identify a plurality of marketing items to potentially fill the remnant space; determine which ones of the plurality of marketing items to print on the remnant space; and cause the determined ones of the plurality of marketing items to be printed on the remnant space.
 15. The POS printer of claim 14, wherein the controller is further configured to: determine which ones of the plurality of marketing items will fit within the remnant space, wherein the determination of which ones of the plurality of marketing items to print on the remnant space is based on which items will fit.
 16. The POS printer of claim 14, wherein the controller is further configured to: rank the plurality of marketing items, wherein the determination of which ones of the plurality of marketing items to print on the remnant space is based on the rank.
 17. The POS printer of claim 11, wherein the additional information comprises marketing content.
 18. The POS printer of claim 17, wherein the controller is further configured to: resize graphics or text to fit the marketing content in the remnant space.
 19. The POS printer of claim 11, wherein the controller is further configured to: determine whether to cause the first print head and the second print head to print simultaneously or one at a time.
 20. A Point of Sale (POS) printer comprising: a paper tape roller configured to advance or retract a paper tape configured as a paper tape roll, the paper tape having a first side and a second side; a first print head configured to print on the first side of the paper tape; a second print head configured to print on the second side of the paper tape; a controller configured to: control printing by the first print head and the second print head to print a register receipt on the first side of the paper tape and advertising content on the second side of the paper tape; and receive first print information from a POS terminal; determine whether second print information is received from a marketing computer; and preferentially cause the first print head to print at least a portion of the second print information from the marketing computer instead of the first print information from the POS terminal.
 21. The POS printer of claim 20, wherein the controller is further configured to: scale the register receipt or the advertising content to fit within a particular length of the paper tape.
 22. The POS printer of claim 20, wherein the controller is further configured to: cause the first print head to print the register receipt on the first side of the paper tape; cause the paper tape roller to rewind the paper tape roll; and cause the second print head to print the advertising content on the second side of the paper tape.
 23. The POS printer of claim 20, wherein the controller is further configured to: determine remnant space on at least one of the first side of the paper tape or the second side of the paper tape; determine content to fill the remnant space; and cause the content to be printed on the remnant space.
 24. The POS printer of claim 23, wherein the controller is further configured to: determine marketing content to fill the remnant space.
 25. The POS printer of claim 24, wherein the controller is further configured to: resize graphics or text to fit the marketing content in the remnant space.
 26. The POS printer of claim 23, wherein the controller is further configured to: identify a plurality of marketing items to potentially fill the remnant space; determine which ones of the plurality of marketing items to print on the remnant space; and cause the determined ones of the plurality of marketing items to be printed on the remnant space.
 27. The POS printer of claim 26, wherein the controller is further configured to: determine which ones of the plurality of marketing items will fit within the remnant space, wherein the determination of which ones of the plurality of marketing items to print on the remnant space is based on which items will fit.
 28. The POS printer of claim 26, wherein the controller is further configured to: rank the plurality of marketing items, wherein the determination of which ones of the plurality of marketing items to print on the remnant space is based on the rank.
 29. The POS printer of claim 20, wherein the controller is further configured to: determine whether to cause the first print head and the second print head to print simultaneously or one at a time.
 30. A method for making a Point of Sale (POS) printer comprising a paper tape roller, a first print head, a second print head, comprising: providing the paper tape roller for advancing or retracting a paper tape configured as a paper tape roll, the paper tape having a first side and a second side; providing the first print head configured to print on the first side of the paper tape; providing the second print head configured to print on the second side of the paper tape; and providing a controller for controlling the first print head and the second print head to print on the paper tape a register receipt on the first side of the paper tape and advertising content on the second side of the paper tape, receiving print transaction information for a transaction from a POS terminal, receiving print transaction information for the transaction from a marketing computer, and preferentially causing the first print head to print at least a portion of the print transaction information from the marketing computer instead of the print transaction information from the POS terminal.
 31. A method of printing by a Point of Sale (POS) printer, comprising: receiving, by the POS printer, print instructions for printing a register receipt for a purchase transaction on a first side of a paper tape and advertising content on a second side of the paper tape; determining, by the POS printer, remnant space on the first side of the paper tape for the purchase transaction or remnant space on the second side of the paper tape based on a first length of the register receipt to be printed on the first side and a second length of the advertising content to be printed on the second side; determining, by the POS printer, additional marketing information to be printed on the remnant space; printing, by the POS printer, the register receipt on the first side of the paper tape; and printing, by the POS printer, the additional marketing information on the remnant space.
 32. A method of printing by a Point of Sale (POS) printer, comprising: receiving, by the POS printer from a POS terminal or a POS computer, first print instructions used to print a register receipt for a purchase transaction; delaying printing, by the POS printer, the register receipt for the purchase transaction until a time out period expires; receiving, by the POS printer, second print instructions used to print: (i) the register receipt and (ii) advertising content from the marketing computer during the delay; and printing, by the POS printer, the register receipt and the advertising content based on the second print instructions instead of the first print instructions when the second print instructions from the marketing computer are received.
 33. The method of claim 32, wherein the controller is further configured to: scale the register receipt or the advertising content to fit within a particular length of the paper tape.
 34. The method of claim 32, the method further comprising: causing the first print head to print the register receipt on the first side of the paper tape; causing the paper tape roller to rewind the paper tape roll; and causing the second print head to print the advertising content on the second side of the paper tape.
 35. The method of claim 32, the method further comprising: determining remnant space on at least one of the first side of the paper tape or the second side of the paper tape; determining content to fill the remnant space; and causing the content to be printed on the remnant space.
 36. The method of claim 35, the method further comprising: determining marketing content to fill the remnant space.
 37. The method of claim 36, the method further comprising: resizing graphics or text to fit the marketing content in the remnant space.
 38. The method claim 35, the method further comprising: identifying a plurality of marketing items to potentially fill the remnant space; determining which ones of the plurality of marketing items to print on the remnant space; and causing the determined ones of the plurality of marketing items to be printed on the remnant space.
 39. The method of claim 38, wherein determining which ones of the plurality of marketing items to print on the remnant space comprises: determining which ones of the plurality of marketing items will fit within the remnant space.
 40. The method of claim 38, wherein determining which ones of the plurality of marketing items to print on the remnant space comprises: ranking the plurality of marketing items, wherein the determination of which ones of the plurality of marketing items to print on the remnant space is based on the rank.
 41. The method of claim 32, the method further comprising: determining whether to cause the first print head and the second print head to print simultaneously or one at a time. 